package com.ssm.sport.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ssm.sport.entity.Shipping;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 收货地址数据访问接口
 */
@Mapper
public interface ShippingMapper extends BaseMapper<Shipping> {
    
    /**
     * 获取用户默认收货地址
     * @param userId 用户ID
     * @return 默认收货地址
     */
    Shipping selectDefaultShipping(Integer userId);
    
    /**
     * 获取用户所有收货地址
     * @param userId 用户ID
     * @return 收货地址列表
     */
    List<Shipping> selectByUserId(Integer userId);
    
    /**
     * 设置用户默认收货地址
     * @param userId 用户ID
     * @param shippingId 收货地址ID
     * @return 影响行数
     */
    int setDefault(@Param("userId") Integer userId, @Param("shippingId") Integer shippingId);
    
    /**
     * 清除用户所有默认收货地址
     * @param userId 用户ID
     * @return 影响行数
     */
    int clearDefault(@Param("userId") Integer userId);
} 